package main

import (
	"fmt"
	"os"
)

func main() {
	/*
		FileInfo: 文件信息
			interface
				Name()，文件名
				Size()，文件大小，字节为单位
				IsDir()，文件是否是目录（即文件夹）
				ModTime()，文件最近的修改时间
				Mode()，权限

		权限的表示方法：
		（1）符号表示：
		文件的权限分配是 读:r，写:w，可执行:x。如果没有哪一个权限，用 - 代替
		（-文件 d目录 |连接符号）
		例如: -rwxr-xr-x

		（2）八进制表示方式：
			r ——> 004
			w ——> 002
			x ——> 001
			- ——> 000
	*/
	fileInfo, err := os.Stat("E:/代码文件/笔记.txt")
	if err != nil {
		fmt.Println("err:", err)
	}
	fmt.Printf("%T\n", fileInfo) //*os.fileStat

	//文件名
	fmt.Println(fileInfo.Name())
	//大小
	fmt.Println(fileInfo.Size())
	//是否是目录
	fmt.Println(fileInfo.IsDir()) //IsDirectory
	//最近修改的时间
	fmt.Println(fileInfo.ModTime())
	//权限
	fmt.Println(fileInfo.Mode()) //-rw-rw-rw-
}
